// **********************************************************************
//
// Copyright (c) 2003-2008 ZeroC, Inc. All rights reserved.
//
// This copy of Ice is licensed to you under the terms described in the
// ICE_LICENSE file included in this distribution.
//
// **********************************************************************

// Ice version 3.3.0

package CustomerRelationsManagement;

/**
 *
 * @author Administrator
 */
public interface _CRMOperationsNC
{
    /**
     *
     * @return
     */
    customerPrx CreateCustomer();

    /**
     *
     * @param CustName
     * @return
     * @throws CustomerRelationsManagement.DBError
     * @throws CustomerRelationsManagement.RecordNotFound
     */
    customerPrx LoadCustomerByName(String CustName)
        throws DBError,
               RecordNotFound;

    /**
     *
     * @param CustId
     * @return
     * @throws CustomerRelationsManagement.DBError
     */
    customerPrx LoadCustomerById(int CustId)
        throws DBError;

    /**
     *
     * @return
     */
    orderPrx CreateOrder();

    /**
     *
     * @param OrderId
     * @return
     * @throws CustomerRelationsManagement.DBError
     * @throws CustomerRelationsManagement.RecordNotFound
     */
    orderPrx LoadOrderById(int OrderId)
        throws DBError,
               RecordNotFound;

    /**
     *
     * @param CustId
     * @return
     * @throws CustomerRelationsManagement.DBError
     */
    orderPrx[] LoadOrderByCustomer(int CustId)
        throws DBError;

    /**
     *
     * @return
     * @throws CustomerRelationsManagement.DBError
     * @throws CustomerRelationsManagement.RecordNotFound
     */
    orderPrx[] LoadNewOrders()
        throws DBError,
               RecordNotFound;
}
